#https://www.runoob.com/python3/python3-module.html

# 模块是一个包含所有你定义的函数和变量的文件，其后缀名是.py
# import module1[, module2[,... moduleN]
# from modname import name1[, name2[, ... nameN]]

from UserModule import User
from UserModule import UserRole
userRole = UserRole("admin")
user = User("kim",20,userRole)
print(user)

print("########### 打印 UserModule模块内定义的所有名称")
import UserModule
print(dir(UserModule))

print(UserModule.UserRole)
print(UserModule.__builtins__)
print(UserModule.__cached__)
print(UserModule.__doc__)
print(UserModule.__file__)
print(UserModule.__loader__)
print(UserModule.__name__)
print(UserModule.__package__)
print(UserModule.__spec__)

# import : 导入模块
import sound.format.bytesToBin
sound.format.bytesToBin.to_bin()

# from ... import ...: 导入模块
from sound.format import bytesToBin
bytesToBin.to_bin()

# from ... import ...: 直接导入一个函数或者变量:
from sound.format.bytesToBin import to_bin
to_bin()

# 内置的函数 dir() 可以找到模块内定义的所有名称
print(dir(sound.format.bytesToBin))